This invention relates to a microcomputer and a data processing device having an erasable and programmable nonvolatile memory and a CPU (a central processing unit), and more particularly, to a microcomputer configured to enable the nonvolatile memory for erasing and programming under program control, inclusively of the microcomputer-related art applicable to a one-chip microcomputer having a flash memory, for instance.
An electrically erasable and programmable nonvolatile memory such as a flash memory is available for storing information depending on a difference of programmed threshold voltage in a memory cell. In the flash memory, its threshold voltage is made different at difference amounts of holes or electrons accumulated in a floating gate. A higher threshold voltage state relative to a thermal equilibrium threshold voltage state is called a program state, while a lower threshold voltage state relative to the thermal equilibrium threshold voltage state is called an erase state, for instance (the definition to the contrary is also applicable). In this place, a process of repeatedly verifying the threshold voltage state every application of high voltage pulse is required for erase operation of enabling the memory cell for erasing and programming operation of enabling the memory cell for programming. This process is subject to the control by the erasing and programming operations depending on its progress condition. In this case, an erase/program control sequence, when hardware-embodied, is hard to cope with a change of specifications and so on, and therefore, using the CPU software-embodies an erase/program sequence.
A more complicated erase/program sequence is required with the progress of a process generation of the flash memory, and besides, tuning of an erase/program mode to meet the memory characteristics of an individual device is also supposed to be inevitable even throughout mass production. Accordingly, leaving the development of such software to a user will be a considerable burden on the user.
In Japanese Unexamined Patent Publication No. Hei 7(1995)-261997, there is disclosed the related art which places an erasing/programming program and an erase/program control program in a flash ROM, and in the need for reprogramming, transfers these programs to a RAM to reprogram information in the flash ROM under control of the erase/program control program. The above art of providing the erasing/programming program in the state of being stored in the flash memory relieves the user of the burden to a certain degree.
Incidentally, the user defined in the present specification is equivalent to a microcomputer or like semiconductor device user in a broader sense. Accordingly, so far as a semiconductor device is placed at the service of its manufacturer in some meaning, the manufacturer itself is supposed to be a user as well.